Conversation
Locally, MinIO already has more parquet files than on the test server.
Note that the previously strategy didn't work anymore if the server returned a parquet file, which is the case for the new local setup.
This means it is not reliant on the evaluation engine processing the dataset. Interestingly, the database state purposely seems to keep the last task's dataset in preparation explicitly (by having processing marked as done but having to dataset_status entry).
tests/files/localhost:8080
Outdated
| @@ -0,0 +1 @@ | |||
| /Users/pietergijsbers/repositories/openml-python/tests/files/org/openml/test No newline at end of file | |||
There was a problem hiding this comment.
will make this relative
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1630 +/- ##
=======================================
Coverage 52.75% 52.75%
=======================================
Files 36 36
Lines 4333 4333
=======================================
Hits 2286 2286
Misses 2047 2047 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
geetu040
left a comment
There was a problem hiding this comment.
Thanks for these fixes.
I hope the test-server can be fully replicated locally for the tests now.
Left a few questions, and tests/files/localhost:8080 file needs to revised.
| task_cache_directory = openml.utils._create_cache_directory_for_id( | ||
| TASKS_CACHE_DIR_NAME, task_id | ||
| ) | ||
| task_cache_directory_existed = task_cache_directory.exists() |
There was a problem hiding this comment.
task_cache_directory now points to the folder with all the tasks instead of the folder with the specific task ...
| if not tid_cache_dir_existed: | ||
| openml.utils._remove_cache_dir_for_id(TASKS_CACHE_DIR_NAME, tid_cache_dir) | ||
| if not task_cache_directory_existed: | ||
| openml.utils._remove_cache_dir_for_id(TASKS_CACHE_DIR_NAME, task_cache_directory) |
There was a problem hiding this comment.
.. and therefore remove the complete directory, instead of the specific task. is that intentional?
| @@ -0,0 +1 @@ | |||
| org/openml/test No newline at end of file | |||
There was a problem hiding this comment.
why this symlink is uploaded? probably a mistake?
or is this used for linking remote-test-server cache with local-test-server cache. if this was intentional, can I ask what's it's purpose and this path can't be tracked on windows because of the :
leads to CI failure on windows: job/61983305389
Update the tests to allow connecting to a local test server instead of a remote one (requires openml/services#13).
Running the tests locally:
Locally start the services (as defined in Update to function as out-of-the-box test server services#13) using
docker compose --profile "rest-api" --profile "evaluation-engine" up -d. Startup can take a few minutes, as currently the PHP container still builds the ES indices from scratch.I noticed that the
start_periodfor some services isn't sufficient on my M1 Mac, possibly due to some containers requiring Rosetta to run, slowing things down. You can recognize this by the services reporting "Error" while the container remains running. To avoid this, you can either increase thestart_periodof the services (mostly elastic search and php api), or you can simply run the command again (the services are then already in healthy state and the services that depended on it can start successfully).The following containers should run: openml-test-database, openml-php-rest-api, openml-nginx, openml-evaluation-engine, openml-elasticsearch, openml-minio
Update the
openml/config.py'sTEST_SERVER_URLvariable to"http://localhost:8000".Run the tests (
python -m pytest -m "not production" tests).This PR builds off unmerged PR #1620.